<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8" />
		<meta http-equiv="X-UA-Compatible" content="IE=edge" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<title>Document</title>
	</head>
	<body>
		<script>
			// 闭包是指有权访问另一个函数作用域中变量的函数
			// 一个作用域可以访问另外一个函数的局部变量
			// fn 外面的作用域可以访问 fn 内部的局部变量
			// 闭包的主要作用：延伸了变量的作用范围

			function fn() {
				let num = 10;
				// function fun() {
				// 	console.log(num);
				// }
				// return fun;

				return function () {
					console.log(num);
				};
			}
			let f = fn();
			// 上面这一句等价于
			// let f = function fun() {
			// 	console.log(num);
			// };
			f();
		</script>
	</body>
</html>
